#ifndef ACTION_PL 
#define ACTION_PL

#include "sfGlobals.h"

class ActionPl
{
public:
	ActionPl(int aPlayerNum)
	{
		playerNum = aPlayerNum;
		actionDone=false;
	}
	ActionPl(ActionPl* pl)
	{
		playerNum = pl->playerNum;
		betsize= pl->betsize;
		type = pl->type;
		actionDone=false;
	}
	ActionPl(int aPlayerNum,ActionType aType,int aBetsize=0)
	{
		playerNum = aPlayerNum;
		betsize= aBetsize;
		type = aType;
		actionDone=true;
	}
	virtual void DoAction(ActionType aType=AT_FOLD,int aBetsize=0, int aBetMultiplier=0)	
	{
		betsize= aBetsize;
		type = aType;
		actionDone=true;
	}
public:
	ActionType type;
	int betsize;
	int playerNum;
	bool actionDone;
};

class ActionPlExt: public ActionPl
{
public:
	ActionPlExt(int aPlayerNum):ActionPl(aPlayerNum)
	{
		betMultiplier = 0;
	}
	ActionPlExt(ActionPl* pl):ActionPl(pl)
	{
		betMultiplier = 0;
	}
	ActionPlExt(int aPlayerNum,ActionType aType,int aBetsize=0, int aBetMultiplier=0)
		:ActionPl(aPlayerNum,aType,aBetsize)
	{
		betMultiplier = 0;
	}
	virtual void DoAction(ActionType aType=AT_FOLD,int aBetsize=0, int aBetMultiplier=0)		
	{
		ActionPl::DoAction(aType,aBetsize);
		betMultiplier = 0;
	}
public:
	int betMultiplier;
};

#endif